home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr37 / nwsf121.zip / NEWSEDIT.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-03-08  |  3KB  |  263 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.1O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Boolean  BOOLEAN003
  22.     Integer  INTEGER001
  23.     Integer  INTEGER002
  24.     Integer  INTEGER004
  25.     Integer  INTEGER005
  26.     Integer  INTEGER006
  27.     String   STRING001
  28.     String   STRING002
  29.     String   STRING003
  30.     String   STRING004
  31.     String   STRING005
  32.     String   STRING006
  33.     String   STRING007
  34.     String   STRING008
  35.     String   STRING009
  36.     String   STRING010
  37.     Declare  Function FUNCTION002(Integer INTEGER003) String
  38.  
  39. ;------------------------------------------------------------------------------
  40.  
  41.     Goto LABEL004
  42.     End
  43.     If (Left("", 2) == "~~") Then
  44.         INTEGER001 = 1
  45.     Else
  46.         INTEGER001 = 0
  47.     Endif
  48.  
  49.     EndFunc
  50.  
  51.     INTEGER002 = Abs(0 - 0)
  52.  
  53.     EndFunc
  54.  
  55.  
  56. ;------------------------------------------------------------------------------
  57.  
  58.     Function FUNCTION002(Integer INTEGER003) String
  59.  
  60.     Boolean  BOOLEAN001
  61.     String   STRING002
  62.     String   STRING003
  63.  
  64.     BOOLEAN001 = 0
  65.     STRING002 = ""
  66.     :LABEL001
  67.     If (BOOLEAN001) Goto LABEL003
  68.     FGet INTEGER003, STRING002
  69.     If (Ferr(INTEGER003)) Then
  70.         BOOLEAN001 = 1
  71.     Else
  72.         If ((Trim(STRING002, " ") == "") || (Left(STRING002, 1) == ";")) Goto LABEL002
  73.         Goto LABEL003
  74.         :LABEL002
  75.         Goto LABEL001
  76.     Endif
  77.     :LABEL003
  78.     If (BOOLEAN001 == 1) STRING002 = ""
  79.     FUNCTION002 = STRING002
  80.  
  81.     EndFunc
  82.  
  83.     :LABEL004
  84.     STRING009 = "1.2"
  85.     STRING004 = PPEPath() + "NEWSFLSH.CFG"
  86.     BOOLEAN003 = 0
  87.     STRING005 = PPEPath() + "NEWSTMP.!!!"
  88.     If (TokCount() > 0) Then
  89.         STRING010 = GetToken()
  90.         BOOLEAN003 = 1
  91.     Endif
  92.     INTEGER004 = FNext()
  93.     FOpen INTEGER004, STRING004, 0, 0
  94.     If (Ferr(INTEGER004)) Then
  95.         If (BOOLEAN003) Goto LABEL005
  96.         Log PPEName() + ".CFG file missing", 0
  97.         End
  98.         Goto LABEL006
  99.         :LABEL005
  100.     Else
  101.         :LABEL006
  102.         INTEGER006 = 0
  103.         While (!Ferr(INTEGER004) && (INTEGER006 < 1)) Do
  104.             STRING007 = FUNCTION002(INTEGER004)
  105.             STRING003 = Trim(STRING007, " ")
  106.             STRING006 = PPEPath() + Trim(STRING007, " ")
  107.             If (!Exist(STRING006)) STRING003 = ""
  108.             Inc INTEGER006
  109.         EndWhile
  110.         FClose INTEGER004
  111.     Endif
  112.     If (BOOLEAN003) STRING007 = STRING010
  113.     Cls
  114.     PrintLn "@X0ANewsFlash Editor Version " + STRING009 + "@X07"
  115.     :LABEL007
  116.     Newline
  117.     InputStr "Enter Newsfile to add to (or QUIT)", STRING007, 10, 8, Mask_File(), 8 + 2
  118.     Newline
  119.     STRING003 = Upper(Trim(STRING007, " "))
  120.     If (STRING003 == "QUIT") End
  121.     STRING006 = PPEPath() + Trim(STRING007, " ")
  122.     If (Exist(STRING006)) Goto LABEL008
  123.     PrintLn "File Does Not Exist"
  124.     InputYN "Create it", STRING008, 10
  125.     If (Upper(STRING008) <> YesChar()) Goto LABEL007
  126.     Newline
  127.     INTEGER004 = FNext()
  128.     FCreate INTEGER004, STRING006, 1, 2
  129.     FClose INTEGER004
  130.     :LABEL008
  131.     INTEGER004 = FNext()
  132.     FOpen INTEGER004, STRING005, 1, 3
  133.     FPutLn INTEGER004, "~~" + ReplaceStr(String(Date()), "-", "/")
  134.     Newlines 2
  135.     PrintLn "@X0EEnter text for entry. Press <ENTER> on a blank line to quit@X07"
  136.     BOOLEAN002 = 0
  137.     STRING007 = ""
  138.     :LABEL009
  139.     If (BOOLEAN002) Goto LABEL012
  140.     InputStr "", STRING007, 15, 76, Mask_Ascii(), 2 + 4096 + 256 + 512
  141.     If (Len(STRING007)) Goto LABEL010
  142.     STRING007 = NoChar()
  143.     InputYN "Done Editing", STRING007, 10
  144.     If (Upper(STRING007) == YesChar()) Then
  145.         STRING007 = ""
  146.         BOOLEAN002 = 1
  147.         Newline
  148.         Goto LABEL011
  149.     Else
  150.         STRING007 = ""
  151.         Newline
  152.         Goto LABEL011
  153.     Endif
  154.     Newline
  155.     :LABEL010
  156.     FPutLn INTEGER004, STRING007
  157.     STRING007 = ""
  158.     :LABEL011
  159.     Goto LABEL009
  160.     :LABEL012
  161.     STRING007 = YesChar()
  162.     InputYN "Do you want to add this to the " + STRING003 + " File", STRING007, 10
  163.     Newline
  164.     If (Upper(STRING007) == NoChar()) Then
  165.         PrintLn "@X8CAborting...@X07"
  166.         FClose INTEGER004
  167.         Delete STRING005
  168.         End
  169.     Endif
  170.     INTEGER005 = FNext()
  171.     FOpen INTEGER005, STRING006, 0, 0
  172.     FGet INTEGER005, STRING007
  173.     :LABEL013
  174.     If (Ferr(INTEGER005)) Goto LABEL014
  175.     FPutLn INTEGER004, STRING007
  176.     FGet INTEGER005, STRING007
  177.     Goto LABEL013
  178.     :LABEL014
  179.     FCloseAll
  180.     Copy STRING005, STRING006
  181.     Delete STRING005
  182.     SPrintLn "NewsFlash News file Updated"
  183.     Log "NewsFlash News file Updated", 0
  184.     End
  185.  
  186. ;------------------------------------------------------------------------------
  187. ;
  188. ; Usage report (before postprocessing)
  189. ;
  190. ; ■ Statements used :
  191. ;
  192. ;    5       End
  193. ;    1       Cls
  194. ;    28      Goto 
  195. ;    34      Let 
  196. ;    4       PrintLn 
  197. ;    19      If 
  198. ;    1       FCreate 
  199. ;    3       FOpen 
  200. ;    3       FClose 
  201. ;    3       FGet 
  202. ;    3       FPutLn 
  203. ;    2       Delete 
  204. ;    2       Log 
  205. ;    2       InputStr 
  206. ;    3       InputYN 
  207. ;    1       Inc 
  208. ;    7       Newline
  209. ;    1       Newlines 
  210. ;    1       SPrintLn 
  211. ;    1       Copy 
  212. ;    1       FCloseAll
  213. ;    3       EndFunc
  214. ;
  215. ;
  216. ; ■ Functions used :
  217. ;
  218. ;    14      +
  219. ;    1       -
  220. ;    7       ==
  221. ;    1       <>
  222. ;    1       <
  223. ;    1       >
  224. ;    15      !
  225. ;    1       &&
  226. ;    1       ||
  227. ;    1       Len(
  228. ;    4       Upper()
  229. ;    2       Left()
  230. ;    4       Ferr()
  231. ;    5       Trim()
  232. ;    1       Date()
  233. ;    2       NoChar()
  234. ;    3       YesChar()
  235. ;    1       String()
  236. ;    1       Mask_File()
  237. ;    1       Mask_Ascii()
  238. ;    4       PPEPath()
  239. ;    1       GetToken()
  240. ;    2       Exist()
  241. ;    1       Abs()
  242. ;    1       PPEName()
  243. ;    1       TokCount()
  244. ;    1       ReplaceStr()
  245. ;    4       FNext()
  246. ;
  247. ;------------------------------------------------------------------------------
  248. ;
  249. ; Analysis flags : No flag
  250. ;
  251. ;------------------------------------------------------------------------------
  252. ;
  253. ; Postprocessing report
  254. ;
  255. ;    0       For/Next
  256. ;    1       While/EndWhile
  257. ;    6       If/Then or If/Then/Else
  258. ;    0       Select Case
  259. ;
  260. ;------------------------------------------------------------------------------
  261. ;                 AEGiS Corp - Break the routines, code against the machines!
  262. ;------------------------------------------------------------------------------
  263.